User Guides > PCC Imaging Services (PCCIS) > Using PCC - Overview > PCCIS Overview |
The PCC Imaging Services ( PCCIS ) architecture is based on a two-tier web solution where the PCCIS services is the backend tier and the frontend tier is mostly a light weight pass through tier keeping the customer’s web application simpler to implement the PCC services. There is a slight cost to this approach in that source documents need to be uploaded from the front end web tier to the PCCIS service tier. Actually, the recommendation is to embed code into the web page to initiate the upload sequence of the document and start the PCCIS services preparing the document for viewing. Another caveat is that the document identification needs to be supplied by the PCCIS services so that it can better manage that resource once it is uploaded.
Diagram 1 illustrates the recommended process for document viewing:
Unfortunately, the viewing of email or message files is a more complicated process where the body of those types must be dissected into individual pieces for any attachments. Each attachment has its own document ID (now called Viewing Session Id) which must be handled separately. This complicates the web page where it must determine if a document query string parameter is being used or a session identifier query string, viewingSessionId, as the query string. In general, the viewingSessionId is the identification element for correspondence with PCCIS.
The general concept is illustrated with Diagram 2:
The approach to communicate with the PCCIS follows RESTful principals involving http requests. As hinted above, the RESTful schema involves URL addresses with appropriate http action verbs: POST, GET, PUT and DELETE. The URL strings can be categorized into three groups that target the html viewer needs, the flash viewer needs and the needs shared by both viewers.
As can be seen from the following diagrams 3, 4, and 5, the left side container box denotes the URL and verbs needed to access the PCCIS handler objects noted on the right side inside the PCCIS services web tier:
The 'u' character preceding the {viewingSessionId} value in the APIs above indicates that the viewing session ID is un-encoded. The viewing session ID returned by the first POST request in Diagram 5 will not be encoded, which means that the ID should include the ‘u’ prefix when used by the other requests in the same diagram. |
An 'e' character prefix would indicate that the viewing session ID is encoded using a format of Base 64.
There is another set of RESTful APIs that are focused on the health and wellbeing of the service which do not concern the normal activity and services provided to the client web controls. However, they are useful to evaluate how well the services are performing and may aid in determining whether more resources are necessary for a given web application deployment (i.e. load balancing etc.).
For completeness, diagram 6 denotes this functionality: